author Thibaut Lemaire

Non partage des methodes par instances des objets :

Le résultat JavaScript :


Le code JavaScript :

/*definition d'une funtion constructeur Voiture*/
var Voiture = function() {
/*attribut de l'objet*/
this.possedeMoteur = true;
/*methode de l'objet*/
this.avancer = function() {
document.write ("avance");
}
this.reculer = function() {
document.write ("recule");
}
}
/*instantation d'un objet peugeot207 vie le construteur Voiture*/
var peugeot207 = new Voiture();
/*isntantation d'un autre objet renault12 via le constructeur d'objet Voiture*/
var renault12 = new Voiture();
/*test d'égalité des methodes avancer des objets peugeot207 et renault12*/
/*methode if */
if (peugeot207.avancer == renault12.avancer) {
document.write ("methode avancer partagées par les objets peugeot207 et renault12
");
}
else {
document.write ("methode avancer non partager par les objets créer peugeot207 et renault12
");
}
Code Source

COM sur le script :

Le compte rendu d'exectution confirme bien que la méthode avancer n'est pas factoriser.

Dans la meusure ou les methodes sont déclarées lors de l'instantation des objets, leurs définitions se trouvent dupliquées en mémoire!